import { request } from '../../request/index'
import { showToast, login, getUserProfile } from '../../utils/async'

Page({
  data: {
  },
  onLoad() {

  },

  // 通过用户名密码登录
  async login(e) {
     // 获取用户输入的信息
    let {username, password} = e.detail.value
    // 判断用户输入是否为空
    if(username == '' || password == '') {
      showToast({title: '输入不能为空', icon: 'error', detail: 1000})
      return 
    }
    
    // 发送请求获取数据
    let { data: res } = await request({
      url: '/login',
      method: "POST",
      data: {
        username,
        password
      }
    })
    // 根据状态码来判断是否登录成功
    if (res.status !== 200) {
      showToast({
        title: res.msg,
        icon: 'error',
        detail: 1000
      })
      return
    }

    // 登录成功需要把token值给放到缓存中
    wx.setStorageSync('token', res.data.token)
    // 跳转页面
    wx.switchTab({
      url: '/pages/index/index',
    })
  },

  // 通过微信的api进行登录
  async wechatLogin() {
    // 获取登录用户信息
   let {userInfo} = await getUserProfile({
     desc: '用于小程序登录使用',
   })
   // 放到缓存中保存
   wx.setStorageSync('user', userInfo)

    // 调用微信登录的api获取到code值
    let { code } = await login()
    let { data: res } = await request({
      url: '/wechat',
      data: {
        code
      },
    })
    // 判断是否登录成功
    if (res.status !== 200) {
      showToast({ title: '登录失败', icon: 'error' })
      return
    }
    // 证明登录成功 把获取到的token值保存到缓存中
    wx.setStorageSync('token', res.token)
    // 提示用户登录成功
    showToast({ title: '登录成功', icon: 'success' })
    // 跳转到主页
    wx.switchTab({
      url: '/pages/index/index',
    })

  },

  // 跳转到注册页面
  jumpRegister()  {
    wx.navigateTo({
      url: '/pages/register/index',
    })
  }


})